/**
 * 需求：需要获取城市列表接口，将热门城市写入到 Redux 中，涉及到异步的操作，这个异步代码写到哪里
 * 方案：
 *      1. 组件上异步完成之后再 dispatch
 *      2. 使用 redux-thunk 中间件，让 action 支持函数的形式
 *
 *
 *    ReduxThunk 中间件
 *      核心：是让 dispatch() 可以接受一个函数的动作
 *
 *      语法：
 *        dispatch((dispatch, getState) => {
 *
 *            // ... 异步代码做完之后，再调用 dispatch 去派发一个普通的动作
 *
 *        })
 *
 *    动作的概念：
 *      1. 普通动作 | 同步动作
 *         带有 type 属性的一个普通（plane）对象
 *          { type: 'xxx' }
 *
 *      2. 函数动作 | 异步动作
 *          (dispatch, getState) => {}
 *
 *    ReduxThunk中间件的源码
 */

import { Component } from "react";
import Hello from "./components/Hello";
import World from "./components/World";

export default class App extends Component {
  render() {
    return (
      <div>
        <h1>App</h1>
        <hr />
        <Hello name="zhagnsan" />
        <hr />
        <World />
      </div>
    );
  }
}
